import { createStore } from 'redux'
import calc from './reducers/calc'
// actionCreator => 调用完之后返回的可不就是一个 action 吗
import { increment, decrement } from './actions/calc'
// !#1 如何创建 store
const store = createStore(calc)
const unSubscribe = store.subscribe(() => {
  // 每次 dispatch action 就会被触发
  console.log(store.getState())
})
// unSubscribe()

// !#2 掌握获取数据的方法
// console.log(store.getState())

// 派发的 action 会被 reducer 进行处理
/* store.dispatch({
  type: 'INCREMENT',
  payload: 5,
}) */

// !#3 掌握修改数据的方法
store.dispatch(increment(5))
// console.log(store.getState())
store.dispatch(increment(3))
// console.log(store.getState())
store.dispatch(decrement(2))
// console.log(store.getState())
